#ifndef CONFIG_H
#define CONFIG_H

#include <vector>




// 采样率
#define SAMPLE_RATE   (16000)
#define PI (3.14159265358979323846)
//通道数
#define IN_NUM_CHANNELS    (4)
#define OUT_NUM_CHANNELS    (2)

//帧长
#define WINDOW_SIZE      (512)  

//帧移
#define HOP_SIZE         (128)

// 最大缓存帧数
#define MAX_QUEUE_FRAMES         (4)

// 存储缓存帧的长度
#define NUM_TIME    (2)

// 存储缓FFT频点数量
#define NUM_FREQ    (257) // 实际有效的频点数，实际的NFFT还是窗口长度

// 定义ASC处理时的MEL谱点数
#define WINDOW_SIZE_ASC      (256)  
#define HOP_SIZE_ASC         (64)//帧移
#define NUM_MELS    (32)
#define ENV_NUMS    (5)

//音频采样结构结构体
typedef struct {
    float left_H; // 左边前向麦克风
    float left_B; // 左边后向麦克风
    float right_H; // 右边前向麦克风
    float right_B; // 右边后向麦克风
} audio_sample_IN;

//音频采样结构结构体
typedef struct {
    float left; // 左边扬声器
    float right; // 右边扬声器
} audio_sample_OUT;

// 定义每个频点的最大响度
std::vector<float> Spl_Max_dB = {
    110.0f,    // 0 Hz (起始频率)
    110.0f,    // 62.5 Hz
    110.0f,    // 125 Hz
    110.0f,    // 187.5 Hz
    110.0f,    // 250 Hz
    110.0f,    // 312.5 Hz
    110.0f,    // 375 Hz
    110.0f,    // 437.5 Hz
    110.0f,    // 500 Hz
    110.0f,    // 562.5 Hz
    110.0f,    // 625 Hz
    110.0f,    // 687.5 Hz
    110.0f,    // 750 Hz
    110.0f,    // 812.5 Hz
    110.0f,    // 875 Hz
    110.0f,    // 937.5 Hz
    110.0f,    // 1000 Hz
    110.0f,    // 1062.5 Hz
    110.0f,    // 1125 Hz
    110.0f,    // 1187.5 Hz
    110.0f,    // 1250 Hz
    110.0f,    // 1312.5 Hz
    110.0f,    // 1375 Hz
    110.0f,    // 1437.5 Hz
    110.0f,    // 1500 Hz
    110.0f,    // 1562.5 Hz
    110.0f,    // 1625 Hz
    110.0f,    // 1687.5 Hz
    110.0f,    // 1750 Hz
    110.0f,    // 1812.5 Hz
    110.0f,    // 1875 Hz
    110.0f,    // 1937.5 Hz
    110.0f,    // 2000 Hz
    110.0f,    // 2062.5 Hz
    110.0f,    // 2125 Hz
    110.0f,    // 2187.5 Hz
    110.0f,    // 2250 Hz
    110.0f,    // 2312.5 Hz
    110.0f,    // 2375 Hz
    110.0f,    // 2437.5 Hz
    110.0f,    // 2500 Hz
    110.0f,    // 2562.5 Hz
    110.0f,    // 2625 Hz
    110.0f,    // 2687.5 Hz
    110.0f,    // 2750 Hz
    110.0f,    // 2812.5 Hz
    110.0f,    // 2875 Hz
    110.0f,    // 2937.5 Hz
    110.0f,    // 3000 Hz
    110.0f,    // 3062.5 Hz
    110.0f,    // 3125 Hz
    110.0f,    // 3187.5 Hz
    110.0f,    // 3250 Hz
    110.0f,    // 3312.5 Hz
    110.0f,    // 3375 Hz
    110.0f,    // 3437.5 Hz
    110.0f,    // 3500 Hz
    110.0f,    // 3562.5 Hz
    110.0f,    // 3625 Hz
    110.0f,    // 3687.5 Hz
    110.0f,    // 3750 Hz
    110.0f,    // 3812.5 Hz
    110.0f,    // 3875 Hz
    110.0f,    // 3937.5 Hz
    110.0f,    // 4000 Hz
    110.0f,    // 4062.5 Hz
    110.0f,    // 4125 Hz
    110.0f,    // 4187.5 Hz
    110.0f,    // 4250 Hz
    110.0f,    // 4312.5 Hz
    110.0f,    // 4375 Hz
    110.0f,    // 4437.5 Hz
    110.0f,    // 4500 Hz
    110.0f,    // 4562.5 Hz
    110.0f,    // 4625 Hz
    110.0f,    // 4687.5 Hz
    110.0f,    // 4750 Hz
    110.0f,    // 4812.5 Hz
    110.0f,    // 4875 Hz
    110.0f,    // 4937.5 Hz
    110.0f,    // 5000 Hz
    110.0f,    // 5062.5 Hz
    110.0f,    // 5125 Hz
    110.0f,    // 5187.5 Hz
    110.0f,    // 5250 Hz
    110.0f,    // 5312.5 Hz
    110.0f,    // 5375 Hz
    110.0f,    // 5437.5 Hz
    110.0f,    // 5500 Hz
    110.0f,    // 5562.5 Hz
    110.0f,    // 5625 Hz
    110.0f,    // 5687.5 Hz
    110.0f,    // 5750 Hz
    110.0f,    // 5812.5 Hz
    110.0f,    // 5875 Hz
    110.0f,    // 5937.5 Hz
    110.0f,    // 6000 Hz
    110.0f,    // 6062.5 Hz
    110.0f,    // 6125 Hz
    110.0f,    // 6187.5 Hz
    110.0f,    // 6250 Hz
    110.0f,    // 6312.5 Hz
    110.0f,    // 6375 Hz
    110.0f,    // 6437.5 Hz
    110.0f,    // 6500 Hz
    110.0f,    // 6562.5 Hz
    110.0f,    // 6625 Hz
    110.0f,    // 6687.5 Hz
    110.0f,    // 6750 Hz
    110.0f,    // 6812.5 Hz
    110.0f,    // 6875 Hz
    110.0f,    // 6937.5 Hz
    110.0f,    // 7000 Hz
    110.0f,    // 7062.5 Hz
    110.0f,    // 7125 Hz
    110.0f,    // 7187.5 Hz
    110.0f,    // 7250 Hz
    110.0f,    // 7312.5 Hz
    110.0f,    // 7375 Hz
    110.0f,    // 7437.5 Hz
    110.0f,    // 7500 Hz
    110.0f,    // 7562.5 Hz
    110.0f,    // 7625 Hz
    110.0f,    // 7687.5 Hz
    110.0f,    // 7750 Hz
    110.0f,    // 7812.5 Hz
    110.0f,    // 7875 Hz
    110.0f,    // 7937.5 Hz
    110.0f     // 8000 Hz (终止频率)
};


#endif